package site.jlopen.kuscia.rpc;

import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.BatchQueryDomainDataSourceResponse;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.CreateDomainDataSourceResponse;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.DeleteDomainDataSourceResponse;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.ListDomainDataSourceResponse;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.QueryDomainDataSourceResponse;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceRequest;
import org.secretflow.v1alpha1.kusciaapi.Domaindatasource.UpdateDomainDataSourceResponse;

/**
* @ClassName: KusciaDomainDataSourceRpc
* @Description: DomainDataSource 表示 Kuscia 管理的数据源
* @author ChenJiaLu
* @date 2024年7月13日 下午2:53:40
 */
public interface KusciaDomainDataSourceRpc extends KusciaRpc {

	/**
	* <strong>创建数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public CreateDomainDataSourceResponse createDomainDataSource(CreateDomainDataSourceRequest request);

	/**
	* <strong>更新数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public UpdateDomainDataSourceResponse updateDomainDataSource(UpdateDomainDataSourceRequest request);

	/**
	* <strong>删除数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public DeleteDomainDataSourceResponse deleteDomainDataSource(DeleteDomainDataSourceRequest request);

	/**
	* <strong>查询数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public QueryDomainDataSourceResponse queryDomainDataSource(QueryDomainDataSourceRequest request);

	/**
	* <strong>批量查询数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public BatchQueryDomainDataSourceResponse batchQueryDomainDataSource(BatchQueryDomainDataSourceRequest request);

	/**
	* <strong>列出Domain下全部数据源</strong>
	* @author ChenJiaLu
	* @date 2024年7月13日 下午2:54:11
	 */
	public ListDomainDataSourceResponse listDomainDataSource(ListDomainDataSourceRequest request);
}
